{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "b3afdff0",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "c367c31c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure('pie', facecolor='lightgray')\n",
    "plt.title('Pie', fontsize=20)\n",
    "# 整理数据\n",
    "values = [16.48,12.53,12.21,6.91,4.20]\n",
    "spaces = [0.05, 0.01, 0.01, 0.01, 0.01]\n",
    "labels = ['C', 'Python', 'Java', 'C++', 'C#']\n",
    "colors = ['dodgerblue', 'orangered', 'limegreen', 'violet', 'gold']\n",
    "# 等轴比例\n",
    "plt.axis('equal')\n",
    "plt.pie(\n",
    "    values,  # 值列表\n",
    "    spaces,  # 扇形之间的间距列表\n",
    "    labels,  # 标签列表\n",
    "    colors,  # 颜色列表\n",
    "    '%.2f%%',  # 标签所占比例格式\n",
    "    shadow=True,  # 是否显示阴影\n",
    "    startangle=90,  # 逆时针绘制饼状图时的起始角度\n",
    "    radius=1  # 半径\n",
    ")\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "199c4b77",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
